Overhead scanner device, image acquiring method, and computer-readable recording medium

ABSTRACT

An overhead scanner device includes an area sensor, a linear sensor, and a control unit, wherein the control unit includes an area-image acquiring unit that controls the area sensor to successively acquire a plurality of images, a feature-point extracting unit that extracts feature points from the images acquired by the area-image acquiring unit, a velocity-vector computing unit that computes a velocity vector of each of the feature points by comparing the feature points extracted by the feature-point extracting unit between the images, and a read-start determining unit that determines a read start by the linear sensor, based on the velocity vector computed by the velocity-vector computing unit.

CROSS-REFERENCE TO RELATED APPLICATION

This application is based upon and claims the benefit of priority fromJapanese Patent Application No. 2010-127761, filed Jun. 3, 2010, theentire contents of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an overhead scanner device, an imageacquiring method, and a computer-readable recording medium.

2. Description of the Related Art

When a plurality of documents such as a book having a number of pagesare read by a conventional scanner, a user repeats the followingoperations: opening a target page of the documents, placing thedocuments on a read platen, and pressing a read start button.

JP-A-2005-167934 discloses a device provided with an area sensor and aline sensor. The device recognizes an area to be read and a size of adocument from an image pre-scanned by the area sensor and causes theline sensor to read the document.

Websites of Ishikawa Komuro Laboratory and of Erico Guizzo disclose atechnology for correcting a frame of a moving image photographed by ahigh-speed area sensor to form a scan image (see the website of IshikawaKomuro Laboratory: “Book Flipping Scanning”, URL:http://www.k2.t.u-tokyo.ac.jp/vision/BookFlipScan/index-j.html, and thewebsite of Erico Guizzo: “Superfast Scanner Lets You Digitize a Book ByRapidly Flipping Pages”, IEEE Spectrum, Mar. 17, 2010, URL:http://spectrum.ieee.org/automaton/robotics/robotics-software/book-flipping-scanning,whose websites were retrieved on May 25, 2010).

However, the conventional scanner has some problem that an operation forcausing the scanner to read an image of a document is complicated orthat definition of the image is low.

For example, the scanner described in JP-A-2005-167934 has a problemthat the operation is complicated because the scanner is a flatbedscanner and it is therefore necessary to repeat the followingoperations: opening a document pressure plate, turning over a page ofthe document, placing the document face down, and closing the documentpressure plate in order to cause the scanner to read a plurality ofdocuments although a document size, an offset, or the like can berecognized through pre-scanning by the area sensor.

The scanners described in the websites have some problem that expensiveequipment has to be used in order to read the document in ahigh-definition manner although a scan image can be acquired from themoving image by the overhead type high-speed area sensor.

SUMMARY OF THE INVENTION

It is an object of the present invention to at least partially solve theproblems in the conventional technology.

A overhead scanner device according to one aspect of the presentinvention includes an area sensor, a linear sensor, and a control unit,wherein the control unit includes an area-image acquiring unit thatcontrols the area sensor to successively acquire a plurality of images,a feature-point extracting unit that extracts feature points from theimages acquired by the area-image acquiring unit, a velocity-vectorcomputing unit that computes a velocity vector of each of the featurepoints by comparing the feature points extracted by the feature-pointextracting unit between the images, and a read-start determining unitthat determines a read start by the linear sensor, based on the velocityvector computed by the velocity-vector computing unit.

An image acquiring method according to another aspect of the presentinvention is executed by an overhead scanner device including an areasensor, a linear sensor, and a control unit. The method executed by thecontrol unit includes an area-image acquiring step of controlling thearea sensor to successively acquire a plurality of images, afeature-point extracting step of extracting feature points from theimages acquired at the area-image acquiring step, a velocity-vectorcomputing step of computing a velocity vector of each of the featurepoints by comparing the feature points extracted at the feature-pointextracting step between the images, and a read-start determining step ofdetermining a read start by the linear sensor, based on the velocityvector computed at the velocity-vector computing step.

A computer-readable recording medium according to still another aspectof the present invention stores therein a computer program for anoverhead scanner device including an area sensor, a linear sensor, and acontrol unit. The computer program causes the control unit to execute anarea-image acquiring step of controlling the area sensor to successivelyacquire a plurality of images, a feature-point extracting step ofextracting feature points from the images acquired at the area-imageacquiring step, a velocity-vector computing step of computing a velocityvector of each of the feature points by comparing the feature pointsextracted at the feature-point extracting step between the images, and aread-start determining step of determining a read start by the linearsensor, based on the velocity vector computed at the velocity-vectorcomputing step.

The above and other objects, features, advantages and technical andindustrial significance of this invention will be better understood byreading the following detailed description of presently preferredembodiments of the invention, when considered in connection with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example of a configuration of theoverhead scanner device 100;

FIG. 2 is a view representing one example of an external appearance ofan integrated combination of the linear photographing unit 110 and thearea photographing unit 120 and also illustrating a relationship amongthe main scanning direction, the sub-scanning direction, and therotation direction by the motor 12;

FIG. 3 is a view representing a state when the linear photographing unit110 is viewed from its side and representing one example of the lightirradiated from the line light source 140 under the control of thelight-source controlling unit 102 k;

FIG. 4 is a flowchart of an example of basic processing of the overheadscanner device 100 according to the present embodiment;

FIG. 5 is a view illustrating one example of velocity vectors (opticalflows) computed between the two area images (area image at time t−1 andarea image at time t) photographed while page turning;

FIG. 6 is a flowchart representing one example of the embodyingprocessing in the overhead scanner device 100 according to the presentembodiment;

FIG. 7 is a flowchart representing a subroutine of the document monitorprocess;

FIG. 8 is a flowchart representing a subroutine of the moving-bodymonitor process;

FIG. 9 is a flowchart representing a subroutine of the image correctionprocess;

FIG. 10 is a flowchart representing the details of the image divisionprocess performed by the image dividing unit 102 g;

FIG. 11 is a view illustrating a relationship among the boundary (solidline portion in this figure), the inflection points (center points ofeach circle in this figure), and a dividing line (broken line in thisfigure);

FIG. 12 is a flowchart representing the details of the curve correctionprocess performed by the curve correcting unit 102 h;

FIG. 13 is a view schematically illustrating one example of the curvecorrection process performed by the curve correcting unit 102 h;

FIG. 14 is a flowchart representing the details of the pagerearrangement process;

FIG. 15 is a view schematically illustrating the state in which the userputs his/her hand on an unnecessary page to be read; and

FIG. 16 is a flowchart representing one example of the power savingprocess and the light-source control process in the overhead scannerdevice 100 according to the present embodiment.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Embodiments of an overhead scanner device, an image acquiring method,and a computer-readable recording medium according to the presentinvention will be explained in detail below based on the drawings. Theembodiments do not limit the invention. Specially, although a documentsuch as a book is sometimes described as an object to be read in thepresent embodiment, the present inventions are not to be thus limited,but a stapled medium, a stack of single-cut sheets and the like may beused as an object to be read.

1. Configuration of the Embodiment

The configuration of an overhead scanner device 100 according to thepresent embodiment is explained below with reference to FIG. 1. FIG. 1is a block diagram of an example of a configuration of the overheadscanner device 100.

As shown in FIG. 1, the overhead scanner device 100 includes at least alinear photographing unit 110, an area photographing unit 120, and acontrol unit 102. In this embodiment, the overhead scanner device 100further includes a storage unit 106, an input-output interface unit 108,an indicator light source 130, and a line light source 140. Each unit ofthe overhead scanner device 100 is communicably connected to one anothervia any communication channels.

The storage unit 106 stores the various databases, files and tables. Thestorage unit 106 is storage means, for example, a memory device such asRAM or ROM, a fixed disk device such as a hard disk, a flexible disk,and an optical disk. The storage unit 106 stores therein computerprogram for executing various processes when the program is executed byCPU (Central Processing Unit). As shown in FIG. 1, the storage unit 106includes an image-data temporary file 106 a, a processed-image data file106 b, and an indicator file 106 c.

Among these, the image-data temporary file 106 a temporarily storestherein image data read by the linear photographing unit 110 or by thearea photographing unit 120.

The processed-image data file 106 b stores therein image data processedor edited by an image dividing unit 102 g, a curve correcting unit 102h, and a page rearranging unit 102 j, which will be explained later,from the image data read by the linear photographing unit 110.

The indicator file 106 c is an indicator storage unit that storestherein a color, a shape, and the like, of an indicator such as theuser's hand or finger provided by the user. Here, the indicator file 106c may store therein the color (skin color) or the shape of the user'shand or finger, for each user.

The input-output interface unit 108 has a function for connecting to thecontrol unit 102 with the linear photographing unit 110, the areaphotographing unit 120, the indicator light source 130, or the linelight source 140. LED light source or a monitor may be used as theindicator light source 130. The line light source 140 may be LED lightsource, a laser source or the like, and emit the light into an area tobe read from the light source.

The linear photographing unit 110 scans a document placed face-up fromabove to read an image of the document using a linear sensor 13. In thepresent embodiment, as shown in FIG. 1, the linear photographing unit110 includes a controller 11, a motor 12, the linear sensor 13 (linesensor), and an analog-to-digital (A/D) converter 14. The controller 11controls the motor 12, the linear sensor 13, and the A/D converter 14according to an instruction from the control unit 102 via theinput-output interface unit 108. The linear sensor 13 photoelectricallyconverts the light reaching from a line in the main scanning directionof the document thereto into an analog quantity of electric charge foreach pixel on the line. The A/D converter 14 converts the analogquantity of electric charge amount output from the linear sensor 13 intoa digital signal, and outputs one-dimensional image data. The motor 12is driven to rotate, and a document line as an object to be read by thelinear sensor 13 thereby shifts to the sub-scanning direction. In thisway, the one-dimensional image data is output from the A/D converter 14for each line, and the control unit 102 combines these image data togenerate two-dimensional image data. FIG. 2 illustrates one example ofan external appearance of an integrated combination of the linearphotographing unit 110 and the area photographing unit 120 and alsoillustrates a relationship among the main scanning direction, thesub-scanning direction, and the rotation direction by the motor 12.

As shown in FIG. 2, when the document is placed face-up and isphotographed by the linear photographing unit 110 from above, theone-dimensional image data for the illustrated line in the main scanningdirection is read by the linear sensor 13. Together with rotation of thelinear sensor 13 driven by the motor 12 in the illustrated rotationdirection, the line read by the linear sensor 13 shifts to theillustrated sub-scanning direction. This allows the two-dimensionalimage data for the document to be read by the linear photographing unit110.

Referring back again to FIG. 1, the area photographing unit 120 scans adocument placed face-up from above to read an image of the documentusing an area sensor 22. In the present embodiment, as shown in FIG. 1,the area photographing unit 120 includes a controller 21, the areasensor 22, and an analog-to-digital (A/D) converter 23. The controller21 controls the area sensor 22 and the A/D converter 23 according to aninstruction from the control unit 102 via the input-output interfaceunit 108. The area sensor 22 photoelectrically converts the lightreaching from the document face (two-dimensional surface containing themain scanning direction and the sub-scanning direction, which areillustrated in FIG. 2) into an analog quantity of electric charge foreach pixel. The A/D converter 23 converts the analog quantity ofelectric charge output from the area sensor 22 into a digital signal,and outputs two-dimensional image data. In this way, the two-dimensionalimage data is output from the A/D converter 23. In the presentembodiment, because the linear sensor 13 is capable of reading a largernumber of pixels per line as compared with the area sensor 22, the imageread by the linear photographing unit 110 is higher definition (higherresolution) than the image read by the area photographing unit 120.Hereinafter, in order to discriminate between these images, the imageread by the area photographing unit 120 may be called “area image” andthe image read by the linear photographing unit 110 may be called“linear image”.

The control unit 102 is a CPU or the like that performs overall controlon the overhead scanner device 100. The control unit 102 includes aninternal memory for storing a control program such as an OS (OperatingSystem), programs that define various processing procedures, andnecessary data. The control unit 102 performs information processing forexecuting various processing by these programs or the like. As shown inFIG. 1, the control unit 102 schematically includes an area-imageacquiring unit 102 a, a feature-point detecting unit 102 b, avelocity-vector computing unit 102 c, a page-direction determining unit102 d, a read-start determining unit 102 e, a linear-image acquiringunit 102 f, the image dividing unit 102 g, the curve correcting unit 102h, a skin-color detecting unit 102 i, the page rearranging unit 102 j,and a light-source controlling unit 102 k.

The area-image acquiring unit 102 a controls the area photographing unit120 to successively acquire a plurality of area images. For example, thearea-image acquiring unit 102 a controls the controller 21 of the areaphotographing unit 120 to repeat processes for acquiring image dataphotoelectrically converted by the area sensor 22 and subjected toanalog-to-digital conversion by the A/D converter 23 and storing theacquired image data in the image-data temporary file (buffer) 106 a.That is, the area-image acquiring unit 102 a has a function ofmonitoring how a page of the documents is turned over or how the user'shand moves by photographing motions by the area sensor 22 to acquiresuccessive images (moving images).

The feature-point detecting unit 102 b detects feature points from thearea image acquired by the area-image acquiring unit 102 a. Morespecifically, the feature-point detecting unit 102 b extracts featurepoints from the area image based on the image data for the area imagestored in the image-data temporary file 106 a by the area-imageacquiring unit 102 a. For example, the feature-point detecting unit 102b may extract feature points (characteristic pixels) using a knownfeature-point extraction method (e.g., a feature-point extraction methodin a known optical flow estimation method and a known patternrecognition algorism).

The velocity-vector computing unit 102 c compares the feature pointsextracted by the feature-point detecting unit 102 b between a pluralityof area images to compute a velocity vector of each of the featurepoints. For example, the velocity-vector computing unit 102 c calculatesa distance and a direction where each of the feature points extracted bythe feature-point detecting unit 102 b moves between a previous (timet−1) area image stored in the image-data temporary file 106 a acquiredby the area-image acquiring unit 102 a and a newly acquired current(time t) area image, to compute a velocity vector of each of the featurepoints. Here, the velocity-vector computing unit 102 c may track afeature point (characteristic pixel) using the optical-flow estimationmethod (gradient-based method) and obtain its velocity vector fieldthrough the optical flow or a behavior of an object (document or hand).

The page-direction determining unit 102 d determines a page turningdirection of the documents based on the velocity vector computed by thevelocity-vector computing unit 102 c. For example, the page-directiondetermining unit 102 d may determine that a page is turned over fromleft to right when there are many rightward velocity vectors and maydetermine that a page is turned over from right to left when there aremany leftward velocity vectors, of the velocity vectors (optical flows)of the feature points computed by the velocity-vector computing unit 102c.

The page-direction determining unit 102 d may delete the velocity vectorrepresenting an unexpected movement as follows, as noise. For example,the page-direction determining unit 102 d may delete the velocity vectorwhich does not indicate the page turning direction (specified direction)of the documents, as noise. That is, the page-direction determining unit102 d may determine velocity vectors in the vertical direction as noisewhen the page is arranged to be turned in the horizontal direction(e.g., a book as documents is horizontal double-page spread). Likewise,the page-direction determining unit 102 d may determine velocity vectorsin the horizontal direction as noise when the page is turned over in thevertical direction (e.g., a book as documents is vertical double-pagespread). The page turning direction (specified direction) of thedocuments may be preset, or the image dividing unit 102 g describedlater may determine the direction using a direction of connecting theinflection points detected in the upper and the lower sides or the leftand the right sides of the boundary (document edges) between thedocument and the background, based on a gradation difference of thelinear images. In addition, when the magnitude (length) of the velocityvector is smaller than a predetermined threshold or when the velocityvector is not the specified direction, the page-direction determiningunit 102 d may delete this velocity vector as noise. In this manner, itis considered that the velocity vector having the length of less thanthe predetermined threshold or having the predetermined directionindicates a movement for fine adjustment of the position of the document(e.g., book). Therefore, the page-direction determining unit 102 ddeletes the velocity vector having the length of less than thepredetermined threshold or having the predetermined direction, as noise,from the velocity vectors computed by the velocity-vector computing unit102 c, and can thereby accurately detect only a page turning operationbased on the velocity vectors. In other words, the velocity vectoraccording to the present embodiment can be used for both purposes ofmoving-body detection and noise removal, and thus can be used as anindicator to accurately issue a scan start trigger. The above examplehas explained the noise removal by the page-direction determining unit102 d, however, it is not limited thereto. Therefore, thevelocity-vector computing unit 102 c may remove noise by excluding thevelocity vector having any one or both of a value smaller than thepredetermined threshold and the predetermined direction when computingthe velocity vectors.

The read-start determining unit 102 e determines “read start” by thelinear sensor 13 based on the velocity vectors computed by thevelocity-vector computing unit 102 c. For example, when the movementbased on the velocity vectors computed by the velocity-vector computingunit 102 c stops, the read-start determining unit 102 e may determinethis case as the read start by the linear sensor 13. In addition, whenthe indicator such as the hand and the finger expresses a specificmovement (gesture such as a peace sign), the read-start determining unit102 e may determine this case as the read start by the linear sensor 13based on the velocity vectors computed by the velocity-vector computingunit 102 c. Here, the read-start determining unit 102 e may manage apower supply of the linear sensor 13 for power saving. For example, whenthe read start by the linear sensor 13 is determined, the read-startdetermining unit 102 e may start up a circuit of the linear sensor 13and stop the circuit of the linear sensor 13 when the read start is notdetermined.

When the read-start determining unit 102 e determines the read start,the linear-image acquiring unit 102 f controls the linear photographingunit 110 to acquire the linear image by the linear sensor 13. Forexample, the linear-image acquiring unit 102 f controls the controller11 of the linear photographing unit 110 to rotate the motor 12, combinesone-dimensional image data for each line being photoelectricallyconverted by the linear sensor 13 and subjected to analog-to-digitalconversion by the A/D converter 14, to generate two-dimensional imagedata (image data for the linear images), and stores the generated imagedata in the image-data temporary file 106 a.

The image dividing unit 102 g divides the linear images acquired by thelinear-image acquiring unit 102 f to generate divided images. Morespecifically, the image dividing unit 102 g divides the linear imagebased on the image data acquired by the linear-image acquiring unit 102f and stored in the image-data temporary file 106 a to generate imagedata for the divided images. Here, the image dividing unit 102 g maydetermine a boundary (document edges) between the document and thebackground based on the gradation difference of the linear image,determine respective inflection points in the upper and the lower sidesof the boundary, and divide the area image into left and right imagesusing a line connecting the inflection points. In this case, the imagedividing unit 102 g may function as an image cropping unit for croppinga document area within a range of the determined boundary. The imagedividing unit 102 g may crop the linear image within an area to becropped surrounded due to movement of the feature points, based onhistories of the velocity vectors computed by the velocity-vectorcomputing unit 102 c. That is, when the user traces the periphery of anarea desired to be cropped with his/her fingertip in a unicursal mannerso as to surround the area, the image dividing unit 102 g may determinethat its start point and end point overlap in a velocity vector group ofthe feature points of the user's fingertip, specify an area to becropped, and crop the linear images within the area to be cropped.

The curve correcting unit 102 h corrects each curve distortion of theimages divided by the image dividing unit 102 g. For example, the curvecorrecting unit 102 h may correct the distortion of the divided image sothat the curve of the upper side of the document edge becomes ahorizontal line in contact with the upper side.

The skin-color detecting unit 102 i detects a skin-color portion areafrom the divided images divided by the image dividing unit 102 g. Forexample, the skin-color detecting unit 102 i may detect a skin-colorportion area from the divided images using a known pattern recognitionalgorism or the like based on the color (skin color) of the user's handstored in the indicator file 106 c.

The page rearranging unit 102 j rearranges image data for the dividedimages divided by the image dividing unit 102 g according to the pageturning direction determined by the page-direction determining unit 102d, and stores the rearranged image data in the processed-image data file106 b. When the distortion of the divided image is corrected by thecurve correcting unit 102 h, the page rearranging unit 102 j stores theimage data for the corrected divided image. In addition, the pagerearranging unit 102 j deletes a divided image where the skin-colorportion area is detected by the skin-color detecting unit 102 i, withoutstoring it in the processed-image data file 106 b.

The light-source controlling unit 102 k controls the indicator lightsource 130 to emit light indicating a controllable state of the linearsensor 13 or controls the line light source 140 to emit light indicatingan area to be read by the linear sensor 13. Here, FIG. 3 is a viewrepresenting a state when the linear photographing unit 110 is viewedfrom its side and representing one example of the light irradiated fromthe line light source 140 under the control of the light-sourcecontrolling unit 102 k. As represented in FIG. 3, the light-sourcecontrolling unit 102 k drives the motor 12 to rotate the line lightsource 140 in its rotation direction, and moves line light emitted fromthe line light source 140 and indicating the main scanning directionalong the sub-scanning direction within the area to be read as a limit,so that the area to be read may be notified to the user.

2. Processing of the Embodiment

Examples of processing executed by the overhead scanner device 100having the above configuration are explained below with reference toFIGS. 4 to 16.

2-1. Basic Processing

An example of basic processing executed by the overhead scanner device100 according to the present embodiment is explained below withreference to FIGS. 4 and 5. FIG. 4 is a flowchart of an example of basicprocessing of the overhead scanner device 100 according to the presentembodiment.

As represented in FIG. 4, first, the area-image acquiring unit 102 acontrols the area photographing unit 120 to successively acquire aplurality of area images (Step SA1). For example, the area-imageacquiring unit 102 a controls the controller 21 of the areaphotographing unit 120 to acquire image data for the area imagephotoelectrically converted by the area sensor 22 and subjected toanalog-to-digital conversion by the A/D converter 23 and store theacquired image data in the image-data temporary file 106 a.

The feature-point detecting unit 102 b detects feature points from thearea image acquired by the area-image acquiring unit 102 a (Step SA2).More specifically, the feature-point detecting unit 102 b extracts thefeature points from the area image based on the image data stored in theimage-data temporary file 106 a by the area-image acquiring unit 102 a.For example, the feature-point detecting unit 102 b may extract featurepoints (characteristic pixels) using the known feature-point extractionmethod (e.g., the feature-point extraction method in the known opticalflow estimation method and the known pattern recognition algorism).

The velocity-vector computing unit 102 c compares the feature pointsextracted by the feature-point detecting unit 102 b between a pluralityof the images to compute a velocity vector of each of the feature points(Step SA3). More specifically, the velocity-vector computing unit 102 ccalculates a distance and a direction where each of the feature pointsmoves between a previous (time t−1) area image, which is acquired by thearea-image acquiring unit 102 a and stored in the image-data temporaryfile 106 a, and a newly acquired current (time t) area image, to computea velocity vector of each of the feature points. For example, thevelocity-vector computing unit 102 c may track the feature point(characteristic pixel) using the optical flow estimation method(gradient-based method) and obtain a velocity vector field through theoptical flow or the behavior of an object (document, hand, etc.).

FIG. 5 is a view illustrating one example of velocity vectors (opticalflows) computed between the two area images (area image at time t−1 andarea image at time t) photographed while page turning. The black solidcircle in FIG. 5 represents a start point (position of the feature pointat time t−1) of the velocity vector, and one end of the solid line orthe broken line at the opposite side of the black solid circlerepresents an end point of the velocity vector (position of the featurepoint at time t). The solid line represents a track from right to left,and the broken line represents a track from left to right. Asillustrated in FIG. 5, each velocity vector is calculated for eachfeature point between the two area images acquired by the area-imageacquiring unit 102 a, and in particular, there become more velocityvectors directed from right to left according to the movement of a pageduring the page turning. In this way, the optical flows enable to obtainthe velocity vector field or the behavior of the object (document orhand).

The velocity-vector computing unit 102 c may search and track thefeature point particularly using the gradient-based method (Lucas KanadeAlgorithm) of the optical flow estimation method. The gradient-basedmethod is a method for determining a square error based on an assumptionof “brightness of a characteristic pixel is constant even if timechanges”, and may determine a square error using, for example, thefollowing equation. That is, the smaller the square error, similarity offeature points between two area images is higher, and, therefore, thevelocity-vector computing unit 102 c may compute a track connecting thefeature points whose similarity is the highest, as a velocity vector.

${S\; S\; D} = {\sum\limits_{x \in W}( {{I( {{x + {dx}},{y + {dy}},{t + {dt}}} )} - {I( {x,y,t} )}} )^{2}}$(Here, SSD represents a square error, which is an index indicatingsimilarity between two area images. I (x, y, t) is a pixel value incoordinates (x, y, t), and W represents set of pixels (searching area).)

Referring back again to FIG. 4, the read-start determining unit 102 edetermines “read start” by the linear sensor 13 based on the velocityvectors computed by the velocity-vector computing unit 102 c (Step SA4).For example, when the movement based on the velocity vectors computed bythe velocity-vector computing unit 102 c stops, the read-startdetermining unit 102 e may determine the read start by the linear sensor13. In addition, when the indicator such as the hand and the fingerrepresents a specific movement (gesture), the read-start determiningunit 102 e may determine the read start by the linear sensor 13 based onthe velocity vectors computed by the velocity-vector computing unit 102c.

When the read-start determining unit 102 e determines the read start(Yes at Step SA4), the linear-image acquiring unit 102 f controls thelinear photographing unit 110 to acquire the linear image by the linearsensor 13 (Step SA5). For example, the linear-image acquiring unit 102 fcontrols the controller 11 of the linear photographing unit 110 torotate the motor 12, combines one-dimensional image data for each linebeing photoelectrically converted by the linear sensor 13 and subjectedto analog-to-digital conversion by the A/D converter 14, to generatetwo-dimensional image data, and stores the generated image data in theimage-data temporary file 106 a. When the read-start determining unit102 e does not determine the read start (No at Step SA4), the controlunit 102 returns the process to Step SA1, repeats the processes at StepSA1 to Step SA4, and continuously monitors the page turning of thedocuments, the movement of the user's hand, or the like.

That is one example of basic processing in the overhead scanner device100 according to the present embodiment.

2-2. Embodying Processing

Subsequently, one example of embodying processing further including apage-direction determination process, an image division process, a curvecorrection process, a skin-color detection process, and a pagerearrangement process in the basic processing will be explained belowwith reference to FIG. 6 to FIG. 15. FIG. 6 is a flowchart representingone example of the embodying processing in the overhead scanner device100 according to the present embodiment.

As represented in FIG. 6, first, the control unit 102 of the overheadscanner device 100 controls the area photographing unit 120 to perform adocument monitor process (Step SB1). FIG. 7 is a flowchart representinga subroutine of the document monitor process.

As represented in FIG. 7, the area-image acquiring unit 102 a controlsthe area photographing unit 120 to acquire image data for the area image(Step SB11).

The area-image acquiring unit 102 a detects the document by detecting arectangle of white color or the like using the known pattern recognitionalgorism or the like, based on the image data for the acquired areaimage (Step SB12).

When the document cannot be detected (No at Step SB13), the area-imageacquiring unit 102 a stores the image data for the area image acquiredthis time in the image-data temporary file 106 a being a buffer (StepSB14), and repeats the processes at Step SB11 to Step SB13.

Meanwhile, when the document can be detected (Yes at Step SB13), thearea-image acquiring unit 102 a ends the document monitor process.

Referring back again to FIG. 6, the control unit 102 of the overheadscanner device 100 performs a moving-body monitor process (Step SB2).FIG. 8 is a flowchart representing a subroutine of the moving-bodymonitor process.

As represented in FIG. 8, the feature-point detecting unit 102 b detectsfeature points from the previous (time t−1) area image which is acquiredby the area-image acquiring unit 102 a and stored in the image-datatemporary file 106 a and from the newly acquired current (time t) areaimage (Step SB21).

The velocity-vector computing unit 102 c compares the feature pointsextracted by the feature-point detecting unit 102 b between the areaimages (between the area image at time t−1 and the area image at time t)to compute a velocity vector of each of the feature points (Step SB22).For example, the velocity-vector computing unit 102 c may search featurepoints having the highest similarity, between the area images, using theaforementioned equation for determining the square error to calculate avelocity vector (optical flow) using the track connecting between thesearched feature points.

The read-start determining unit 102 e determines whether any movementhas been detected, based on the velocity vector computed by thevelocity-vector computing unit 102 c (Step SB23). For example, theread-start determining unit 102 e determines whether the velocity vectorcomputed by the velocity-vector computing unit 102 c is a zero vector,whose length is zero.

When it is determined by the read-start determining unit 102 e that anymovement has been detected (Yes at Step SB23), the page-directiondetermining unit 102 d determines a page direction of the document basedon the velocity vectors computed by the velocity-vector computing unit102 c (Step SB24). For example, the page-direction determining unit 102d may determine that a page is turned over from left to right when thereare many rightward velocity vectors and may determine that a page isturned over from right to left when there are many leftward velocityvectors, of the velocity vectors of the feature points computed by thevelocity-vector computing unit 102 c. The page-direction determiningunit 102 d may delete a velocity vector, as noise, which has a lengthless than a predetermined threshold or which has a predetermineddirection. For example, the page-direction determining unit 102 d maydelete the velocity vector which does not indicate a page turningdirection (specified direction) of the document, as noise. For example,when the page is arranged to be turned horizontally, the page-directiondetermining unit 102 d may determine the velocity vector in the verticaldirection as noise. The page-direction determining unit 102 d may alsodetermine the velocity vector smaller than the predetermined thresholdas noise.

The area-image acquiring unit 102 a stores the image data for the areaimage at time t acquired this time in the image-data temporary file 106a being the buffer (Step SB25).

The area-image acquiring unit 102 a controls the area photographing unit120 to newly acquire image data for an area image at time t+1 (StepSB26). Thereafter, the processes at Step SB21 to Step SB23 are repeated.

At Step SB23, when it is determined that no movement has been detected,for example, when the velocity vector is the zero vector (No at StepSB23), the area-image acquiring unit 102 a determines whether the pagedirection has been determined by the page-direction determining unit 102d (Step SB27). When the page direction has not been determined yet (Noat Step SB27), the area-image acquiring unit 102 a returns the processto Step SB25, and repeats the processes.

Meanwhile, when it is determined that the page direction has beendetermined by the page-direction determining unit 102 d (Yes at StepSB27), the area-image acquiring unit 102 a issues a read-start triggerof the linear image (Step SB28). This ends the subroutine of themoving-body monitor process.

Referring back again to FIG. 6, the linear-image acquiring unit 102 fcontrols the linear photographing unit 110 to acquire image data for thelinear image by the linear sensor 13 according to the read-start triggerissued by the read-start determining unit 102 e (Step SB3).

The control unit 102 of the overhead scanner device 100 performs animage correction process (Step SB4). FIG. 9 is a flowchart representinga subroutine of the image correction process.

As represented in FIG. 9, the image dividing unit 102 g divides thelinear images acquired by the linear-image acquiring unit 102 f togenerate divided images (Step SB41). FIG. 10 is a flowchart representingthe details of the image division process performed by the imagedividing unit 102 g.

As represented in FIG. 10, the image dividing unit 102 g acquires imagedata for the linear images acquired by the linear-image acquiring unit102 f (Step SB411), and detects a boundary (document edges) between thedocument and the background, based on a gradation difference of thelinear images (Step SB412).

The image dividing unit 102 g then detects inflection points on theupper and the lower sides of the boundary from the detected boundary(Step SB413). FIG. 11 is a view illustrating a relationship among theboundary (solid line portion in this figure), the inflection points(center points of each circle in this figure), and a dividing line(broken line in this figure). As illustrated in FIG. 11, when one sideof the pages is bound like a book and if the pages are opened, sheets ofpaper are warped, and the upper and the lower sides of the boundary arethereby smoothly deflected. However, the slopes of each edge of the twopages on the upper and the lower sides sharply change at the bound end.The image dividing unit 102 g uses this property to determine therespective inflection points from the upper and the lower sides of theboundary.

The image dividing unit 102 g determines a line connecting twoinflection points as a dividing line and sets left and right two pageareas surrounded by the dividing line and the boundary as an area to becropped (Step SB414).

The image dividing unit 102 g then extracts the divided image of thearea to be cropped from the image data for the linear images to crop thepage (Step SB415), and stores the divided image in the image-datatemporary file 106 a (Step SB416).

Referring back again to FIG. 9, the curve correcting unit 102 h correctscurve distortion of the divided image extracted page by page by theimage dividing unit 102 g (Step SB42). FIG. 12 is a flowchartrepresenting the details of the curve correction process performed bythe curve correcting unit 102 h.

As represented in FIG. 12, the curve correcting unit 102 h creates ahorizontal line in point contact with the upper side of the area to becropped, that is, the upper side of the boundary (document edge) (StepSB421).

The curve correcting unit 102 h adjusts the height of longitudinal linesso that the curve of the upper side of the area to be cropped reachesthe horizontal line and corrects the distortion of the divided image(Step SB422). FIG. 13 is a view schematically illustrating one exampleof the curve correction process performed by the curve correcting unit102 h. In FIG. 13, the thick broken line represents the createdhorizontal line, the thin broken line represents an original area to becropped (boundary of the curved page), and the solid line represents thecorrected area to be cropped.

As represented in FIG. 13, as one example, the curve correcting unit 102h may correct the distortion of the divided image by dividing thedivided image as the original area to be cropped into slips each ofwhich has a one-pixel width in the longitudinal direction and verticallymoving the upper edge of the longitudinal lines of the slips until theupper edge reaches the horizontal line.

Referring back again to FIG. 9, the control unit 102 of the overheadscanner device 100 rearranges image data for the divided images, dividedpage by page by the image dividing unit 102 g and corrected by the curvecorrecting unit 102 h, according to the page direction determined by thepage-direction determining unit 102 d (Step SB43). FIG. 14 is aflowchart representing the details of the page rearrangement process.

As represented in FIG. 14, the skin-color detecting unit 102 i detects askin-color portion area based on the hue of the divided image after itsdistortion is corrected (Step SB431). For example, the skin-colordetecting unit 102 i detects the skin-color portion area from thedivided image using the known pattern recognition algorism, based on thecolor (skin color) of the user's hand stored in the indicator file 106c. FIG. 15 is a view schematically illustrating the state in which theuser puts his/her hand on an unnecessary page to be read. As representedin FIG. 15, when the user does not desire to read an arbitrary page, bycovering the page with the hand, the linear images of the documentincluding the hand are acquired. Thus the skin-color detecting unit 102i can detect the user's hand by detecting the skin-color area.

When the hand is not detected by the skin-color detecting unit 102 i (Noat Step SB432), the page rearranging unit 102 j rearranges the imagedata for the divided image after the distortion is corrected accordingto the page direction determined by the page-direction determining unit102 d, and stores the rearranged image data in the processed-image datafile 106 b (Step SB433). For example, when the page direction determinedby the page-direction determining unit 102 d indicates the page turningfrom right to left, the page rearranging unit 102 j stores the pages inthe processed-image data file 106 b in such an order that the left pageof the double-page spread is stored therein prior to the right pagethereof. When the hand is detected from the divided image by theskin-color detecting unit 102 i (Yes at Step SB432), the pagerearranging unit 102 j deletes the image data for the divided imagewithout storing it in the processed-image data file 106 b.

The page rearranging unit 102 j determines whether the processesperformed on the divided images on the left and right pages have beenended (Step SB434). When any unprocessed divided image remains (No atStep SB434), then the page rearranging unit 102 j repeats the processes.Meanwhile, when no unprocessed divided image remains (Yes at StepSB434), then the page rearranging unit 102 j ends the page rearrangementprocess.

Referring back again to FIG. 6, the overhead scanner device 100 performsthe processes on the document including a plurality of pages, and endsthe embodying processing in the state where the image data after thevarious processes are performed is stored in the processed-image datafile 106 b (Step SB5).

That is one example of the embodying processing in the overhead scannerdevice 100 according to the present embodiment. In the embodyingprocessing, a flow of one time when two-page images in the horizontaldouble-page spread are to be read, has been explained, however, byrepeating the processes at Step SB1 to Step SB5, the other double-pagespreads can be automatically and continuously read.

2-3. Power Saving Process and Light-Source Control Process

Subsequently, one example of the embodying processing further includinga power saving process and a light-source control process will beexplained below with reference to FIG. 16. FIG. 16 is a flowchartrepresenting one example of the power saving process and thelight-source control process in the overhead scanner device 100according to the present embodiment.

As explained in the embodiment, the overhead scanner device 100 controlsthe area photographing unit 120 to perform the document monitor processand the moving-body monitor process, and issues the read-start triggerof a high-definition linear image read by the linear photographing unit110, based on the area image acquired by the area photographing unit120. Therefore, there is no need to always keep the linear photographingunit 110 on, and thus it is possible to achieve power saving by being inthe standby status before the trigger is issued. For example, the linearimage is read according to the issued trigger after the user turns overthe page, however, if the user does not show a next movement, then thelinear photographing unit 110 is entered into the standby status, andthe overhead scanner device 100 performs the process for returning thelinear photographing unit 110 from the standby status when any movementof the user is detected.

That is, as represented in FIG. 16, when the read-start trigger of thelinear image is not issued by the read-start determining unit 102 e (Noat Step SC1), the overhead scanner device 100 performs the processes thesame as these at Step SB21 to Step SB23 (Step SC2 to Step SC4). Thesubsequent processes are performed in parallel to the embodyingprocessing.

When it is determined that any movement has been detected based on thevelocity vectors (Yes at Step SC4), the read-start determining unit 102e starts up a circuit around the linear sensor 13 (Step SC5). Here, thecircuit around the linear sensor 13 may include circuits of thecontroller 11, the motor 12, and the A/D converter 14, in addition tothe circuit of the linear sensor 13.

The light-source controlling unit 102 k controls the indicator lightsource 130 to turn on the light indicating the controllable state of thelinear sensor 13 (Step SC6).

The light-source controlling unit 102 k controls the line light source140 in a blinking manner to irradiate the light indicating an area to beread by the linear sensor 13 (Step SC7). For example, the light-sourcecontrolling unit 102 k may notify the user of the area to be read bydriving the motor 12 to rotate the line light source 140 in its rotationdirection and moving the line light emitted from the line light source140, whose line indicates the main scanning direction, along thesub-scanning direction within the area to be read as a limit whileblinking the line light.

Meanwhile, at Step SC4, when it is determined that no movement has beendetected based on the velocity vectors (No at Step SC4), the read-startdetermining unit 102 e stops the circuit around the linear sensor 13(Step SC8).

The light-source controlling unit 102 k turns off the indicator lightsource 130 (Step SC9) and turns off the line light source 140 (StepSC10).

The overhead scanner device 100 repeats the processes to achieve powersaving until the read-start trigger of the linear image is issued by theread-start determining unit 102 e (No at Step SC1), and notifies theuser of the controllable state of the linear sensor 13 and the area tobe read thereby using the light. The overhead scanner device 100 mayreturn the process to Step SC1 each time a scan-start trigger is issued(Yes at Step SC1) and repeat the processes before a new trigger isissued.

That is one example of the power saving process and the light-sourcecontrol process.

3. Summary of Present Embodiment and Other Embodiments

As explained above, according to the present embodiment, the overheadscanner device 100 controls the area photographing unit 120 tosuccessively acquire area images, extracts feature points from theacquired area images, and compares the feature points between the areaimages. Based on this, the overhead scanner device 100 computes velocityvectors (optical flows) of the feature points, and determines the readstart by the linear sensor 13, based on the computed velocity vectors.This enables to acquire an image excellent in reading operability of thedocument and with high definition. For example, the conventional scannerhas to be controlled using a button incorporated in the device orthrough a personal computer connected to the scanner, which leads toreduction in productivity especially when a plurality of documents areto be processed. However, according to the present invention,high-definition image of the document can be acquired without requiringany particular button and tool or the like to start reading thedocument.

According to the present embodiment, when the movement based on thevelocity vectors stops, the overhead scanner device 100 determines thiscase as the read start by the linear sensor 13. In this manner, the readstart is automatically performed when the setting of the document iscompleted in such a manner that the page is turned over or the documentis pressed by the hand, thus having excellent operability.

According to the present embodiment, the overhead scanner device 100determines the page turning direction of documents based on the computedvelocity vectors, controls the linear photographing unit 110 when theread start is determined to acquire the linear image of the document,divides the linear image, rearranges the divided images according to thedetermined page turning direction, and stores the rearranged dividedimages in the processed-image data file 106 b. With this feature, theorder of the pages is determined from the page turning movement, and theimages divided for each page can be rearranged in this order. Therefore,editing works such as the division and the rearrangement of the readimages on the computer are not needed, thus largely increasing theproductivity. Conventionally, the user is required to perform thefollowing operations: (1) turning over a page, (2) pressing a scan startbutton, (3) waiting for completion of scanning, (4) dividing the pageinto left and right pages, (5) correcting a curve of the page, and (6)rearranging documents according to the order of the pages and storingthe rearranged documents. However, according to the present embodiment,the user only sequentially turns over pages of a book without operatingthe scanner, so that documents such as a book or the like can becomputerized. As a result, because the scanner control does not give anytrouble to the user, the productivity can be improved without bothersomeoperations.

According to the present embodiment, the overhead scanner device 100determines a boundary (document edges) between the document and thebackground based the gradation difference of the acquired linear images,determines respective inflection points on the upper and the lower sidesof the boundary, and divides the linear image into left and right imagesusing the dividing line connecting the inflection points. This allowsthe images to be accurately divided page by page when the book or thelike is formed with horizontal double-page spreads.

According to the present embodiment, the overhead scanner device 100corrects the curve distortion of the divided images, rearranges thecorrected divided images according to the determined page turningdirection, and stores the rearranged divided images in theprocessed-image data file 106 b. In this manner, the curve distortionthat occurs when a plurality of sheets of paper are bound like a book orthe like is corrected, so that an image with no distortion for each pagecan be acquired.

According to the present embodiment, the overhead scanner device 100detects a skin-color portion area from the divided images, and deletesthe divided image, where the skin-color portion area is detected,without storing it in the processed-image data file 106 b. Thus, whenthe user puts the user's hand on the unnecessary page, it is possible toacquire a document image not including the unnecessary page by detectingthe area of the hand on the image due to the skin color.

According to the present embodiment, when the read start by the linearsensor 13 is not determined, the overhead scanner device 100 starts upthe circuits around the linear sensor 13 when any movement has beendetected based on the velocity vectors, and stops the circuits aroundthe linear sensor 13 when no movement has been detected based on thevelocity vectors. This allows the linear sensor 13 to be in the standbystatus resulting in power saving when reading by the linear sensor 13 isnot needed like the case where the document is not set.

According to the present embodiment, the overhead scanner device 100controls the indicator light source 130 to emit light indicating thecontrollable state of the linear sensor 13, and controls the line lightsource 140 to emit light indicating the area to be read in a blinkingmanner. Thus, before reading, it is possible to notify the user that thelinear sensor 13 becomes the readable state, or to notify the user ofthe area to be read by the linear sensor 13.

According to the present embodiment, the overhead scanner device 100crops the linear images within the area to be cropped surrounded due tomovement of the feature points, based on the histories of the computedvelocity vectors. This allows an image to be accurately cropped alongthe user's intention when the user traces the periphery of the area tobe cropped with his/her hand.

The embodiment of the present invention is explained above. However, thepresent invention may be implemented in various different embodimentsother than the embodiment described above within a technical scopedescribed in claims. For example, an example in which the overheadscanner device 100 performs the processing as a standalone apparatus isexplained. However, the overhead scanner device 100 can be configured toperform processes in response to request from a client terminal whichhas a housing separate from the overhead scanner device 100 and returnthe process results to the client terminal. All the automatic processesexplained in the present embodiment can be, entirely or partially,carried out manually. Similarly, all the manual processes explained inthe present embodiment can be, entirely or partially, carried outautomatically by a known method. The process procedures, the controlprocedures, specific names, information including registration data foreach process, display example, and database construction, mentioned inthe description and drawings can be changed as required unless otherwisespecified.

The constituent elements of the overhead scanner device 100 are merelyconceptual and may not necessarily physically resemble the structuresshown in the drawings. For example, the process functions performed byeach device of the overhead scanner device 100, especially the eachprocess function performed by the control unit 102, can be entirely orpartially realized by CPU and a computer program executed by the CPU orby a hardware using wired logic. The computer program, recorded on arecording medium to be described later, can be mechanically read by theoverhead scanner device 100 as the situation demands. In other words,the storage unit 106 such as read-only memory (ROM) or hard disk drive(HDD) stores the computer program for performing various processes. Thecomputer program is first loaded to the random access memory (RAM), andforms the control unit in collaboration with the CPU. Alternatively, thecomputer program can be stored in any application program serverconnected to the overhead scanner device 100 via the network, and can befully or partially loaded as the situation demands.

The computer program may be stored in a computer-readable recordingmedium, or may be structured as a program product. Here, the “recordingmedium” includes any “portable physical medium” such as a memory card, aUSB (Universal Serial Bus) memory, an SD (Secure Digital) card, aflexible disk, a magnetic optical disk, a ROM, an EPROM (ErasableProgrammable Read Only Memory), an EEPROM (Electronically Erasable andProgrammable Read Only Memory), a CD-ROM (Compact Disk Read OnlyMemory), an MO (Magneto-Optical disk), a DVD (Digital Versatile Disk),and a Blue-ray Disc. Computer program refers to a data processing methodwritten in any computer language and written method, and can havesoftware codes and binary codes in any format. The computer program canbe a dispersed form in the form of a plurality of modules or libraries,or can perform various functions in collaboration with a differentprogram such as the OS. Any known configuration in the each deviceaccording to the embodiment can be used for reading the recordingmedium. Similarly, any known process procedure for reading or installingthe computer program can be used.

Various databases and the like (the image-data temporary file 106 a, theprocessed-image data file 106 b, and the indicator file 106 c) stored inthe storage unit 106 are storage means such as a memory device such as aRAM or a ROM, a fixed disk device such as a HDD, a flexible disk, and anoptical disk, and stores therein various programs, tables, and databasesused for providing various processing.

The overhead scanner device 100 may be structured as an informationprocessing apparatus such as known personal computers or workstations.Furthermore, the information processing apparatus may be structured byconnecting any peripheral devices. The overhead scanner device 100 maybe realized by the information processing apparatus in which software(including program or data) for executing the method according to thepresent invention is implemented. The distribution and integration ofthe device are not limited to those illustrated in the figures. Thedevice as a whole or in parts can be functionally or physicallydistributed or integrated in an arbitrary unit according to variousattachments or how the device is to be used. That is, any embodimentsdescribed above can be combined when implemented, or the embodiments canselectively be implemented.

Although the invention has been described with respect to specificembodiments for a complete and clear disclosure, the appended claims arenot to be thus limited but are to be construed as embodying allmodifications and alternative constructions that may occur to oneskilled in the art that fairly fall within the basic teaching herein setforth.

What is claimed is:
 1. An overhead scanner device comprising: an areasensor; a linear sensor; and a control unit, wherein the control unitincludes an area-image acquiring unit that controls the area sensor tosuccessively acquire a plurality of images; a feature-point extractingunit that extracts feature points from the images acquired by thearea-image acquiring unit; a velocity-vector computing unit thatcomputes a velocity vector of each of the feature points by comparingthe feature points extracted by the feature-point extracting unitbetween the images; and a read-start determining unit that determines aread start by the linear sensor, based on the velocity vector computedby the velocity-vector computing unit.
 2. The overhead scanner deviceaccording to claim 1, wherein when movement based on the velocity vectorstops, the read-start determining unit determines this case as the readstart by the linear sensor.
 3. The overhead scanner device according toclaim 1, further comprising a storage unit, wherein the control unitfurther includes a page-direction determining unit that determines apage turning direction of a document, based on the velocity vectorcomputed by the velocity-vector computing unit; a linear-image acquiringunit that controls the linear sensor to acquire an image of the documentwhen the read start is determined by the read-start determining unit; animage dividing unit that divides the image acquired by the linear-imageacquiring unit into divided images; and a page rearranging unit thatrearranges the images divided by the image dividing unit according tothe page turning direction determined by the page-direction determiningunit, and stores the rearranged images in the storage unit.
 4. Theoverhead scanner device according to claim 3, wherein the image dividingunit determines a boundary between the document and its background basedon a gradation difference of the image acquired by the linear-imageacquiring unit, determines respective inflection points on upper andlower sides of the boundary, and divides the image into left and rightimages using a line connecting the inflection points.
 5. The overheadscanner device according to claim 3, wherein the control unit furtherincludes a curve correcting unit that corrects a curve distortion of theimage divided by the image dividing unit, and the page rearranging unitrearranges the images corrected by the curve correcting unit, accordingto the page turning direction determined by the page-directiondetermining unit, and stores the rearranged image in the storage unit.6. The overhead scanner device according to claim 3, wherein the controlunit further includes a skin-color detecting unit that detects askin-color portion area from the image divided by the image dividingunit, and the page rearranging unit deletes the image, in which theskin-color portion area is detected by the skin-color detecting unit,without storing the image in the storage unit.
 7. The overhead scannerdevice according to claim 1, wherein when the read start by the linearsensor is not determined, the read-start determining unit starts up acircuit of the linear sensor if any movement has been detected based onthe velocity vector, and stops the circuit of the linear sensor if nomovement based on the velocity vector has been detected.
 8. The overheadscanner device according to claim 1, further comprising a light source,wherein the control unit further includes a light-source controllingunit that controls the light source to emit light indicating acontrollable state of the linear sensor or an area to be read thereby.9. The overhead scanner device according to claim 1, wherein the controlunit further includes an image cropping unit that crops the image readby the linear sensor within an area to be cropped surrounded due tomovement of the feature points, based on history of the velocity vectorcomputed by the velocity-vector computing unit.
 10. An image acquiringmethod executed by an overhead scanner device including an area sensor,a linear sensor, and a control unit, wherein the method executed by thecontrol unit comprising an area-image acquiring step of controlling thearea sensor to successively acquire a plurality of images; afeature-point extracting step of extracting feature points from theimages acquired at the area-image acquiring step; a velocity-vectorcomputing step of computing a velocity vector of each of the featurepoints by comparing the feature points extracted at the feature-pointextracting step between the images; and a read-start determining step ofdetermining a read start by the linear sensor, based on the velocityvector computed at the velocity-vector computing step.
 11. Anon-transitory computer-readable recording medium that stores therein acomputer program for an overhead scanner device including an areasensor, a linear sensor, and a control unit, the computer programcausing the control unit to execute: an area-image acquiring step ofcontrolling the area sensor to successively acquire a plurality ofimages; a feature-point extracting step of extracting feature pointsfrom the images acquired at the area-image acquiring step; avelocity-vector computing step of computing a velocity vector of each ofthe feature points by comparing the feature points extracted at thefeature-point extracting step between the images; and a read-startdetermining step of determining a read start by the linear sensor, basedon the velocity vector computed at the velocity-vector computing step.